<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 1.数组方法里面的push pop unshift shift的作用分别是什么，他们的返回值又是什么？
        // push向数组的末尾添加数据 返回值：添加数据之后的数组的长度
        // pop删除数组的最后一个数据 返回值：被删除的数据
        // unshift在数组的最前面插入一条数据,返回值：添加数据之后数组的长度
        // shift删除数组最前面的一个数据 返回值：被删除的数据
        // 2.移除数组 arr["西瓜","香蕉","菠萝"]中除西瓜外的所有元素，不要使用第二个数组
        // let arr=["西瓜","香蕉","菠萝"]
        // let res=arr.slice(0,-2);
        // console.log(arr);
        // console.log(res);

        // for(let i=0;i<arr.length;i++){
        //     if(arr[i]!="西瓜"){
        //         arr.splice(i);
        //     }
        // }
        // console.log(arr);
        // 3.移除数组 arr[1, 2, 3, 4, 2] 中的 2。不要直接修改数组 arr，结果返回新的数组
        // let arr=[1,2,3,4,2]
        // let res=[];
        // for(let i=0;i<arr.length;i++){
        //     if(arr[i]!= 2){
        //         res[res.length]=arr[i];
        //     }
        // }
        // console.log(res);

        // for(let i=0;i<arr.length;i++){
        //     if(arr[i]!=2){
        //         res.push(arr[i]);
        //     }
        // }
        // console.log(res);
        // console.log(arr);
        // 4.定义一个函数,能在数组 arr[1, 2, 3, 4, 2] 的 "2"后面添加元素 "jack"。不要直接修改数组 arr，结果返回新的数组即调用函数后返回的结果为[1, 2,'jack',3, 4, 2,'jack']
        // let arr=[1,2,"",3,4,2]
        // arr[6]="jack";
        // arr[2]="jack";
        // console.log(arr);

        //    let arr=[1, 2, 3, 4, 2]
        //    arr.splice(2,0,"jack");
        //    arr.splice(6,0,"jack");
        //    console.log(arr);

        // let arr = [1, 2, 3, 4, 2]
        // let res=[];
            // for(i=0;i<arr.length;i++){
            //    if(arr[i]==2){
            //     res[res.push("jack")]=arr[i];
            //    }
            // }
        // console.log(res);

        // function fn(arr,num,str){
        //     let res=[];
        //     for(let i=0;i<arr.length;i++){
        //         if(arr[i]==num){
        //             res.push(arr[i],str)
        //         }else{
        //             res.push(arr[i])
        //         }
        //     }
        //     return res;
        // }
        // let arr2 =fn(arr,2,"jack");
        // console.log(arr2);
        

        // 统计数组 var arr = ["a", "b", "c", "a", "b", "c", "a", "b", "c", "a", "b", "c"]; 中 每个字母出现的次数，以对象的形式返回。
        // {
        //     a:xx,
        //     b:xx,
        // }

        let arr = ["a", "b", "c", "a", "b", "c", "a", "b", "c", "a", "b", "c"];
        // let res =arr.indexOf("c");
        // let res1 =arr.indexOf("a");
        // let res2 =arr.indexOf("b");
        // console.log(res);
        // console.log(res1);
        // console.log(res2);

        let res={};
        for(let i=0;i<arr.length;i++){
            res[arr[i]]=(res[arr[i]]+1)||1
        }
       console.log(res);
       

    </script>
</body>

</html>